package com.pearadmin.pro.modules.paper.service;


import com.baomidou.mybatisplus.extension.service.IService;
import com.pearadmin.pro.modules.paper.dto.PaperQuDTO;
import com.pearadmin.pro.modules.paper.dto.ext.PaperQuDetailDTO;
import com.pearadmin.pro.modules.paper.entity.PaperQu;

import java.util.List;

/**
 * <p>
 * 试卷考题业务类
 * </p>
 *
 * @author 聪明笨狗
 * @since 2020-05-25 16:33
 */
public interface PaperQuService extends IService<PaperQu> {

    /**
     * 查找详情
     *
     * @param paperId
     * @param quId
     * @return com.pearadmin.pro.modules.paper.entity.PaperQu
     * @author ZhouXingYun
     * @date 2022/5/23 17:43
     */
    PaperQu findByKey(String paperId, String quId);

    /**
     * 根据试卷找出题目列表
     *
     * @param paperId
     * @return java.util.List<com.pearadmin.pro.modules.paper.dto.PaperQuDTO>
     * @author ZhouXingYun
     * @date 2022/5/23 18:39
     */
    List<PaperQuDTO> listByPaper(String paperId);


    /**
     * 根据组合索引更新
     *
     * @param qu
     * @author ZhouXingYun
     * @date 2022/5/24 16:17
     */
    void updateByKey(PaperQu qu);

    /**
     * 统计客观分
     * @param paperId
     * @return
     */
    int sumObjective(String paperId);


    /**
     * 找出全部试题列表
     * @param paperId
     * @return
     */
    List<PaperQuDetailDTO> listForPaperResult(String paperId);
}
